package com.bdmc.report.domain.bo;

import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.bdmc.common.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;;
import java.time.LocalDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
 * 人员考勤业务对象 report_check_work
 *
 * @author bdmc
 * @date 2022-03-11
 */

@Data
public class ReportCheckWorkBo  {

    /**
     * 排班考勤
     */
    private Long checkWorkId;

    /**
     * 日期
     */
    private String effectDate;

    private String effectStart;

    private String effectEnd;

    /**
     * 计划详情id
     */
    private Long planDetailId;

    /**
     * 排班计划id
     */
    private Long workPlanId;

    /**
     * 工作组id
     */
    private Long workTeamId;

    /**
     * 人员id
     */
    private Long personId;

    /**
     * 设备id
     */
    private Long deviceId;

    /**
     * 车辆id
     */
    private Long carId;

    /**
     * 围栏id
     */
    private Long fenceId;

    /**
     * 工作计划类型
     */
    private String workPlanType;

    /**
     * 班组开始时间
     */
    private String startSpan;

    /**
     * 班组结束时间
     */
    private String endSpan;

    /**
     * 工作状态0，未上班，1，已上班，2，已下班
     */
    private Integer workState;

    /**
     * 实际上班时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime startWorkTime;

    /**
     * 实际下班时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endWorkTime;

    private LocalDateTime createTime;

    /**
     * 实际上班维度
     */
    private String startWorkLat;

    /**
     * 实际上班经度
     */
    private String startWorkLng;

    /**
     * 实际下班维度
     */
    private String endWorkLat;

    /**
     * 实际下班精度
     */
    private String endWorkLng;

    /**
     * 部门
     */
    private Long deptId;
    /**
     * 人员
     */
    private String personName;
    /**
     * 工作计划名称
     */
    private String workPlanName;
    /**
     * 班组名称
     */
    private String workTeamName;
    /**
     * 缺勤原因
     */
    private String absenceReason;
}
